Peripheral devices can be used to add functionality to, or extend the capabilities of, a computing system. For example, peripheral devices can be added to a computing system to give the computing system output functionality, including the ability to display using monitors or print using printers. Other examples of peripheral devices include input devices (e.g., keyboards, mice, touchpads, etc.) storage devices, network interfaces, and so on. Because the peripheral devices attached to a computing system can be added or changed, peripheral devices provide a great deal of flexibility in constructing computing systems.
In some cases, a peripheral device can be “hot-plugged” or “hot-swapped” into or out of a host system. To hot-plug or hot-swap a component means to physically insert or physically remove the component from a host system while the host system is powered on, and possibly while the host system is in active operation. Without hardware and/or software support for hot-plugging, the host system would need to be powered off before a component can be added or removed.